package cn.smartaccount.demo.infrastructure.entity;

import java.util.Date;
import javax.persistence.*;

@Table(name = "t_user_info")
public class UserInfoDO {
    /**
     * 主键
     */
    @Id
    private Long id;

    /**
     * 用户id
     */
    @Column(name = "user_id")
    private Long userId;

    /**
     * 用户名
     */
    @Column(name = "user_name")
    private String userName;

    /**
     * 密码
     */
    private String password;

    /**
     * 用户昵称
     */
    private String nickname;

    /**
     * 用户头像
     */
    private String avatar;

    /**
     * 出生日期
     */
    private Date birthday;

    /**
     * 用户的性别，值为1时是男性，值为2时是女性，值为0时是未知
     */
    @Column(name = "sex_type")
    private Boolean sexType;

    /**
     * 手机号
     */
    @Column(name = "mobile_phone")
    private String mobilePhone;

    /**
     * 邮件
     */
    private String email;

    /**
     * 小程序用户唯一标识 OpenID
     */
    @Column(name = "open_id")
    private String openId;

    /**
     * 微信开放平台账号唯一标识
     */
    @Column(name = "union_id")
    private String unionId;

    /**
     * 拓展字段
     */
    @Column(name = "ext_info")
    private String extInfo;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 修改时间
     */
    @Column(name = "update_time")
    private Date updateTime;

    /**
     * 创建人
     */
    private String creator;

    /**
     * 修改人
     */
    private String updater;

    /**
     * 0 正常 1注销 2冻结
     */
    private Integer status;

    /**
     * 是否删除 0未删除 1删除
     */
    @Column(name = "is_del")
    private Boolean isDel;

    /**
     * 获取主键
     *
     * @return id - 主键
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置主键
     *
     * @param id 主键
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取用户id
     *
     * @return user_id - 用户id
     */
    public Long getUserId() {
        return userId;
    }

    /**
     * 设置用户id
     *
     * @param userId 用户id
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 获取用户名
     *
     * @return user_name - 用户名
     */
    public String getUserName() {
        return userName;
    }

    /**
     * 设置用户名
     *
     * @param userName 用户名
     */
    public void setUserName(String userName) {
        this.userName = userName;
    }

    /**
     * 获取密码
     *
     * @return password - 密码
     */
    public String getPassword() {
        return password;
    }

    /**
     * 设置密码
     *
     * @param password 密码
     */
    public void setPassword(String password) {
        this.password = password;
    }

    /**
     * 获取用户昵称
     *
     * @return nickname - 用户昵称
     */
    public String getNickname() {
        return nickname;
    }

    /**
     * 设置用户昵称
     *
     * @param nickname 用户昵称
     */
    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    /**
     * 获取用户头像
     *
     * @return avatar - 用户头像
     */
    public String getAvatar() {
        return avatar;
    }

    /**
     * 设置用户头像
     *
     * @param avatar 用户头像
     */
    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    /**
     * 获取出生日期
     *
     * @return birthday - 出生日期
     */
    public Date getBirthday() {
        return birthday;
    }

    /**
     * 设置出生日期
     *
     * @param birthday 出生日期
     */
    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    /**
     * 获取用户的性别，值为1时是男性，值为2时是女性，值为0时是未知
     *
     * @return sex_type - 用户的性别，值为1时是男性，值为2时是女性，值为0时是未知
     */
    public Boolean getSexType() {
        return sexType;
    }

    /**
     * 设置用户的性别，值为1时是男性，值为2时是女性，值为0时是未知
     *
     * @param sexType 用户的性别，值为1时是男性，值为2时是女性，值为0时是未知
     */
    public void setSexType(Boolean sexType) {
        this.sexType = sexType;
    }

    /**
     * 获取手机号
     *
     * @return mobile_phone - 手机号
     */
    public String getMobilePhone() {
        return mobilePhone;
    }

    /**
     * 设置手机号
     *
     * @param mobilePhone 手机号
     */
    public void setMobilePhone(String mobilePhone) {
        this.mobilePhone = mobilePhone;
    }

    /**
     * 获取邮件
     *
     * @return email - 邮件
     */
    public String getEmail() {
        return email;
    }

    /**
     * 设置邮件
     *
     * @param email 邮件
     */
    public void setEmail(String email) {
        this.email = email;
    }

    /**
     * 获取小程序用户唯一标识 OpenID
     *
     * @return open_id - 小程序用户唯一标识 OpenID
     */
    public String getOpenId() {
        return openId;
    }

    /**
     * 设置小程序用户唯一标识 OpenID
     *
     * @param openId 小程序用户唯一标识 OpenID
     */
    public void setOpenId(String openId) {
        this.openId = openId;
    }

    /**
     * 获取微信开放平台账号唯一标识
     *
     * @return union_id - 微信开放平台账号唯一标识
     */
    public String getUnionId() {
        return unionId;
    }

    /**
     * 设置微信开放平台账号唯一标识
     *
     * @param unionId 微信开放平台账号唯一标识
     */
    public void setUnionId(String unionId) {
        this.unionId = unionId;
    }

    /**
     * 获取拓展字段
     *
     * @return ext_info - 拓展字段
     */
    public String getExtInfo() {
        return extInfo;
    }

    /**
     * 设置拓展字段
     *
     * @param extInfo 拓展字段
     */
    public void setExtInfo(String extInfo) {
        this.extInfo = extInfo;
    }

    /**
     * 获取创建时间
     *
     * @return create_time - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取修改时间
     *
     * @return update_time - 修改时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置修改时间
     *
     * @param updateTime 修改时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取创建人
     *
     * @return creator - 创建人
     */
    public String getCreator() {
        return creator;
    }

    /**
     * 设置创建人
     *
     * @param creator 创建人
     */
    public void setCreator(String creator) {
        this.creator = creator;
    }

    /**
     * 获取修改人
     *
     * @return updater - 修改人
     */
    public String getUpdater() {
        return updater;
    }

    /**
     * 设置修改人
     *
     * @param updater 修改人
     */
    public void setUpdater(String updater) {
        this.updater = updater;
    }

    /**
     * 获取0 正常 1注销 2冻结
     *
     * @return status - 0 正常 1注销 2冻结
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置0 正常 1注销 2冻结
     *
     * @param status 0 正常 1注销 2冻结
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获取是否删除 0未删除 1删除
     *
     * @return is_del - 是否删除 0未删除 1删除
     */
    public Boolean getIsDel() {
        return isDel;
    }

    /**
     * 设置是否删除 0未删除 1删除
     *
     * @param isDel 是否删除 0未删除 1删除
     */
    public void setIsDel(Boolean isDel) {
        this.isDel = isDel;
    }
}